const path = require("path");
const fs = require('fs')
const ENV = process.env.npm_lifecycle_event; //获取当前运行的脚本指令,例如 npm run build 则当前变量为'build'
function getDocPath(basePath) {
    // 根据路径获取markdown文件
    let fileArr = [basePath]
    fs.readdirSync(path.resolve(`docs${basePath}`)).map((t) => {
        if (t !== 'README.md') {
            // REALMD.md 放到数组中会导致文档解析出错
            fileArr.push(`${basePath}${t}`)
        }
    })
    return fileArr
}

module.exports = {
    title: '奇享科技APP组件文档',  // 设置网站标题
    description: '组件文档', // 描述
    base: ENV == 'docs:dev' ? '/components/api/' :'/dist/', // 开发环境跟部署时的基础路径不同
    themeConfig: {
        nav: [
            {text: '业务平台WEB', link: '/WEB/'}, // 配置的自定义导航栏
            {text: '奇享APP', link: '/APP/'},
        ],
        sidebar: { // 配置侧边栏部分
            '/WEB/': [
                {
                    title: '开发前必读',   // 必要的
                    path: '/WEB/develop/',      // 可选的, 标题的跳转链接，应为绝对路径且必须存在
                    sidebarDepth: 1,    // 可选的, 默认值是 1
                    children: getDocPath('/WEB/develop/')
                },
                {
                    title: '公用组件',   // 必要的
                    path: '/WEB/public/',      // 可选的, 标题的跳转链接，应为绝对路径且必须存在
                    sidebarDepth: 1,    // 可选的, 默认值是 1
                    children: getDocPath('/WEB/public/')
                },
                {
                    title: '业务组件',   // 必要的
                    path: '/WEB/business',      // 可选的, 标题的跳转链接，应为绝对路径且必须存在
                    children: getDocPath('/WEB/business/')
                },
            ],
            '/APP/': [
                {
                    title: '公用组件',   // 必要的
                    path: '/APP/public/',      // 可选的, 标题的跳转链接，应为绝对路径且必须存在
                    sidebarDepth: 1,    // 可选的, 默认值是 1
                    children: getDocPath('/APP/public/')
                },
                {
                    title: '业务组件',   // 必要的
                    path: '/APP/business',      // 可选的, 标题的跳转链接，应为绝对路径且必须存在
                    children: getDocPath('/APP/business/')
                },
            ],
        },
        sidebarDepth: 2
    },
    plugins: ['demo-container-v2'],
    configureWebpack: {
        resolve: {
            alias: {
                '@': path.resolve(__dirname, './'), // 设置路径别名
            }
        }
    }
}
